YNQ  YNQ-1.5.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
amapi.h
Go to the documentation of this file.
1 /*********************************************************************
2  *
3  * Copyright (c) 2021 by Visuality Systems, Ltd.
4  *
5  *************************************************************************
6  * FILE NAME : $Workfile:$
7  * ID : $Header:$
8  * REVISION : $Revision:$
9  *--------------------------------------------------------------------
10  * DESCRIPTION : Authentication API
11  *--------------------------------------------------------------------
12  * MODULE : NQ
13  * DEPENDENCIES :
14  *************************************************************************/
15 
16 #ifndef _AMAPI_H_
17 #define _AMAPI_H_
18 
19 #include "cmapi.h"
20 
21 /* -- Constants -- */
22 
26 /* security levels: */
27 #define AM_MAXSECURITYLEVEL 4
37 /* available encryption algorithms: */
38 
39 #define AM_CRYPTER_NONE 0
41 #define AM_CRYPTER_LM 1
43 #define AM_CRYPTER_NTLM 2
45 #define AM_CRYPTER_LM2 3
47 #define AM_CRYPTER_NTLM2 4
56 /* security mechanisms: */
57 #define AM_MECH_NTLMSSP 1
58 #define AM_MECH_KERBEROS 2
62 /* -- Structures --*/
63 
69 typedef struct {
70  NQ_CHAR name[CM_BUFFERLENGTH(NQ_CHAR, 256)];
71  NQ_CHAR realm[CM_BUFFERLENGTH(NQ_CHAR, 256)];
72 }
73 AMDomainA;
74 
75 typedef struct {
76  NQ_WCHAR name[CM_BUFFERLENGTH(NQ_WCHAR, 256)];
77  NQ_WCHAR realm[CM_BUFFERLENGTH(NQ_WCHAR, 256)];
78 }
79 AMDomain;
80 
86 /* Account credentials */
87 typedef struct {
89  NQ_CHAR user[CM_BUFFERLENGTH(NQ_CHAR, 257)];
90  NQ_CHAR password[CM_BUFFERLENGTH(NQ_CHAR, 257)];
92 }
94 
96 typedef struct {
98  NQ_WCHAR user[CM_BUFFERLENGTH(NQ_WCHAR, 257)];
99  NQ_WCHAR password[CM_BUFFERLENGTH(NQ_WCHAR, 257)];
101 }
103 
111 #define AM_CREDENTIALS_PASSWORD_PLAINTEXT 0
112 #define AM_CREDENTIALS_PASSWORD_MD4 1
113 
116 /* -- Functions -- */
117 
124 NQ_BOOL amStart(void);
125 
128 void amShutdown(void);
129 
130 #if defined(UD_NQ_INCLUDECIFSCLIENT) || defined(DOXYGEN)
131 
185 void amClientDefineLevel(NQ_UINT level, NQ_UINT crypter1, NQ_UINT crypter2, NQ_UINT32 mehanisms);
186 
203 void amSetNonSecureAuthentication(NQ_BOOL enableNonSecureAuthentication);
204 
205 #endif /* UD_NQ_INCLUDECIFSCLIENT */
206 
209 #endif /* _AMAPI_H_ */
unsigned int NQ_UINT
Definition: udapi.h:29
Definition: amapi.h:69
void amShutdown(void)
AMDomainA domain
Definition: amapi.h:88
NQ_UINT type
Definition: amapi.h:100
NQ_UINT16 NQ_WCHAR
Definition: udapi.h:45
void amClientDefineLevel(NQ_UINT level, NQ_UINT crypter1, NQ_UINT crypter2, NQ_UINT32 mehanisms)
Definition: amapi.h:75
void amSetNonSecureAuthentication(NQ_BOOL enableNonSecureAuthentication)
NQ_BOOL amStart(void)
int NQ_BOOL
Definition: udapi.h:30
Definition: amapi.h:87
char NQ_CHAR
Definition: udapi.h:26
unsigned long NQ_UINT32
Definition: udapi.h:43
AMDomain domain
Definition: amapi.h:97
NQ_UINT type
Definition: amapi.h:91
Definition: amapi.h:96